From: Ray Strode Date: Mon, 27 Jul 2020 14:58:49 +0000 (-0400) Subject: loginDialog: Reset auth prompt on vt switch before fade in X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~684^2^2~90 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=13137aad9db52223e8b62cecbd3456f4a7f66f04;p=gnome-shell.git loginDialog: Reset auth prompt on vt switch before fade in At the moment, if a user switches to the login screen vt, the login screen fades in whatever was on screen prior, and then does a reset. It makes more sense to reset first, so we fade in what the user is going to interact with instead of what they interacted with before. Fixes: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/2997 --- diff --git a/js/gdm/loginDialog.js b/js/gdm/loginDialog.js index 46ddc51f5..9acb01c68 100644 --- a/js/gdm/loginDialog.js +++ b/js/gdm/loginDialog.js @@ -953,16 +953,15 @@ var LoginDialog = GObject.registerClass({ if (this.opacity == 255 && this._authPrompt.verificationStatus == AuthPrompt.AuthPromptStatus.NOT_VERIFYING) return; + if (this._authPrompt.verificationStatus !== AuthPrompt.AuthPromptStatus.NOT_VERIFYING) + this._authPrompt.reset(); + this._bindOpacity(); this.ease({ opacity: 255, duration: _FADE_ANIMATION_TIME, mode: Clutter.AnimationMode.EASE_OUT_QUAD, - onComplete: () => { - if (this._authPrompt.verificationStatus != AuthPrompt.AuthPromptStatus.NOT_VERIFYING) - this._authPrompt.reset(); - this._unbindOpacity(); - }, + onComplete: () => this._unbindOpacity(), }); }